package org.manage.dao;

import org.apache.ibatis.annotations.Param;
import org.manage.entity.Employee;


import java.util.List;

public interface EmployeeDao {

	/**
	 * 查询用户名是否唯一
	 * @param username 自定义用户名
	 * @return
	 */
	int countUsername(String username);
	
	/**
	 * 根据用户名和密码查询用户数量
	 * @param username
	 * @param password
	 * @return
	 */
	int findByUsernameAndPassword(@Param("username")String username, @Param("password")String password);

	/**
	 * 获取所有员工
	 * 
	 * @return
	 */
	List<Employee> list();

	/**
	 * 查询员工数量
	 * 
	 * @return
	 */
	int findCount();

	/**
	 * 分页查询
	 * 
	 * @param begin
	 *            起始页
	 * @param pageSize
	 *            页面容量
	 * @return
	 */
	List<Employee> findByPage(@Param("begin")int begin, @Param("pageSize")int pageSize);

	/**
	 * 保存员工
	 * 
	 * @param employee
	 */
	void save(Employee employee);

	/**
	 * 根据Id查找员工
	 * 
	 * @param eid
	 * @return
	 */
	Employee findById(int eid);

	/**
	 * 更新员工
	 * 
	 * @param employee
	 */
	void update(Employee employee);

	/**
	 * 根据员工编号进行删除
	 * 
	 * @param eid
	 */
	void delete(int eid);
}
